package com.recharge.core.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 商品与供应商关联
 * </p>
 *
 * @author reagan
 * @since 2020-08-19
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "business_goods_provider", resultMap = "BaseResultMap")
public class GoodsProviderEntity implements Serializable {

    private static final long serialVersionUID = 1L;
    @TableId(type = IdType.ASSIGN_UUID)
    private String id;

    /**
     * 供应商ID
     */
    private String providerId;

    /**
     * 商品ID
     */
    private String goodsId;

//    @TableField(exist = false)
    private String groupId;

    private String groupName;
    /**
     * 商品名称
     */
//    @TableField(exist = false)
    private String goodsName;

    private Long denomination;

    /**
     * 供应商编号
     */
    private String providerNo;

    /**
     * 供应商名称
     */
    private String providerName;

    /**
     * 供货商品管理
     */
    private String providerGoodsNo;

    /**
     * 销售折扣
     */
    @TableField(exist = false)
    private Float discount;
    /**
     * 成本价格
     */
    private Float costDiscount;

    /**
     * 批量修改的成本价格
     */
    private Float afterCostDiscount;


    /**
     * 供应方式
     */
    private Integer providerMethod;

    /**
     * 0.不允许可平价 1.允许 2.不允许只能盈利
     */
    private Integer lossType;


    /**
     * 供货权重
     */
    private Integer priority;

    /**
     * 1.同步 2.异步
     */
    private Integer apiMethod;

    private Date createDate;

    private Date modifiDate;

    private String creator;

    private String modifier;

    /**
     * 1.正常 2.维护
     */
    private Integer status;

    /**
     * 商品状态
     */
    @TableField(exist = false)
    private Integer goodsStatus;

    /**
     * -1 删除 1 有效
     */
    private Integer isDelete;

    /**
     * 商品组业务单位
     */
    private Integer unit;

    /**
     * 商品组业务值
     */
    private Long valueData;


}
